class CCoordTrans
{
     private:
	void DMS_RAD(int Deg,int Min,double Sec,double* Rad);
	void RAD_DMS(double Rad,int* Deg,int* Min,double* Sec);
	double ConvergeAngle(double B,double l,int mode);
	void CrossBelt(double* X,double* Y,int* num_belt,int mode);

     public:
	CCoordTrans();
	~CCoordTrans();
	void SetConvParaTo84(double cp_dx,double cp_dy,double cp_dz,\
		double cp_wx,double cp_wy,double cp_wz,double cp_dk);
	void Bl_XY(double B,double l,double *X,double *Y,int mode);
	void XY_BLCon(double X,double Y,int num_belt,double *B,double *L,\
			   double* radCon,int mode);
	void WGS84Geo_BJ54Gauss(double B84,double L84,double H84,\
		      double* X54Gauss,double* Y54Gauss,int* numBelt);
	void WGS84_BJ54(double X84Gauss,double Y84Gauss,double H84,int iBelt,\
		      double* X54Gauss,double* Y54Gauss,double *H54);
	void BJ54_WGS84(double X54Gauss,double Y54Gauss,double H54,int iBelt,\
		      double* X84Gauss,double* Y84Gauss,double *H84);
	void BJ54Gauss_WGS84Geo(double X54Gauss, double Y54Gauss, double H54, double* B84,\
				double* L84, double *H84);

};